package com.lutzyt.delivery.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lutzyt.delivery.bean.Address;

import java.util.List;

/**
 * 地址表
 * @author zyt
 */
public interface AddressService extends IService<Address> {

  /**
   * 通过ID查询单个地址表
   *
   * @param id ID
   * @return {@link Address}
   */
  Address findById(Integer id);

  /**
   * 分页查询地址表
   *
   * @param pageNum  页号
   * @param pageSize 每页大小
   * @return {@link Address}
   */
  IPage<Address> findByPage(int pageNum, int pageSize);

  /**
   * 新增地址表
   *
   * @param address 地址表
   */
  void insert(Address address);

  /**
   * 修改地址表
   *
   * @param address 地址表
   */
  void update(Address address);

  /**
   * 通过ID删除单个地址表
   *
   * @param id ID
   */
  void deleteById(Integer id);

  /**
   * 批量删除
   * @param ids
   */
  void deleteByIds(List<String> ids);

  /**
   * 我的地址
   * @param id
   * @return
   */
  List<Address> findByCustomerId(Integer id);

  /**
   * 创建地址
   * @param bean
   */
  void create(Address bean);
  /**
   * 修改地址
   * @param bean
   */
  void customerUpdate(Address bean);
}